linear programming basic concepts adn probelm formulation